/*-
* Copyright (c) 2007 Microsoft
* All rights reserved.
*/

#pragma once

namespace Microsoft{
    namespace ComputeCluster{
        namespace MpiNet{

            ///<summay>
            ///Exception when a MPI error occurs
            ///</summay>
            public ref class Operation
            {
            private:
                Operation()
                {
                }

            public:
                literal int Max = MPI_MAX;
                literal int Min = MPI_MIN;
                literal int Sum = MPI_SUM;
                literal int Prod = MPI_PROD;
                literal int LAnd = MPI_LAND;
                literal int BAnd = MPI_BAND;
                literal int Lor = MPI_LOR;
                literal int Ror = MPI_BOR;
                literal int LXor = MPI_LXOR;
                literal int BXor = MPI_BXOR;
                literal int MinLoc = MPI_MINLOC;
                literal int MaxLoc = MPI_MAXLOC;
                literal int Replace = MPI_REPLACE;
            };
        }
    }
}